Liste der HTTP-Headerfelder

HTTP-Header-Felder (oft ungenau HTTP-Header) sind Bestandteile des Hypertext Transfer Protocol (HTTP)-Protokollheaders und übermitteln die für die Übertragung von Dateien über HTTP wichtigen Parameter und Argumente, z. B. gewünschte Sprache oder Zeichensatz sowie oft Informationen über den Client. Oft wird „HTTP-Header“ synonym genutzt, besitzt allerdings die Mehrdeutigkeit zwischen einem einzelnen Feld des Headerblocks und dem ganzen Headerblock. Hier wird für die Gesamtheit der Headerfelder der Begriff „Header“ und für eine einzelne Zeile im Header der Begriff „Headerfeld“ entsprechend RFC 2616[1] genutzt.

Die einzelnen Felder im Header werden immer nach der Anfrage-(Request)-Zeile (z. B. GET /index.html HTTP/1.1) bzw. der Antwort-(Response)-Zeile (bei Erfolg HTTP/1.1 200 OK) übermittelt. Die Zeilen des Headers selbst sind Schlüssel-Wert-Paare, getrennt durch Doppelpunkte (z. B. Content-type: text/html). Die Namen sind durch verschiedene Standards fest spezifiziert. Die Zeilenenden werden durch die Zeichenkombination <CR><LF> (carriage return, line feed) markiert, das Ende des Headers wird durch eine Leerzeile signalisiert, was der Übermittlung von <CR><LF><CR><LF> gleicht.

Die meisten Headerfelder werden durch RFCs der IETF standardisiert, z. B. der „Kern“ in RFC 2616[1] und Erweiterungen in RFC 4229.[2] Die in diesen Spezifikationen getroffenen Standards müssen in allen HTTP-Implementierungen vorhanden sein. Zusätzlich können Hersteller oder Projekte zusätzliche Erweiterungen in ihre Software einbauen (für die dann allerdings keine Garantie besteht, dass sie von allen Implementierungen korrekt „verstanden“ werden). Je nach Produkt kann auch der einzelne Anwender oder Administrator eigene Headerfelder definieren.[3][4]

Da im HTTP-Antwort-Header unter Umständen sicherheitskritische Informationen, wie beispielsweise der verwendete Webserver inklusive Version, ersichtlich sind (z. B. Server: Apache/1.3.27 (Unix) (Red-Hat/Linux)), wird empfohlen, diese zu verbergen.[5][6]

Einsehen lassen sich die dauerhaften und provisorischen Headerfelder bei der Internet Assigned Numbers Authority (IANA).[7][8]

  1. a b Referenzfehler: Ungültiges <ref>-Tag; kein Text angegeben für Einzelnachweis mit dem Namen RFC2616.
  2. RFC 4229 – HTTP Header Field Registrations. Dezember 2005 (englisch).
  3. Anleitung, um mit Apache2 eigene Headerfelder zu definieren (Memento des Originals vom 2. April 2015 im Internet Archive)  Info: Der Archivlink wurde automatisch eingesetzt und noch nicht geprüft. Bitte prüfe Original- und Archivlink gemäß Anleitung und entferne dann diesen Hinweis.@1@2Vorlage:Webachiv/IABot/lbo.spheniscida.de
  4. Dokumentation der Direktive header. httpd.apache.org
  5. Ubuntu: Apache-Informationen „verstecken“. In: Johann.gr. 23. Dezember 2015, abgerufen am 20. Juni 2016 (englisch).
  6. How to hide Nginx version – Nginx Tips. In: ScaleScale.com. Abgerufen am 20. Juni 2016 (amerikanisches Englisch).
  7. Permanent Message Header Field Names. iana.org, 11. Juli 2019, abgerufen am 18. Juli 2019 (englisch).
  8. Provisional Message Header Field Names. iana.org, abgerufen am 18. Juli 2019 (englisch).

© MMXXIII Rich X Search. We shall prevail. All rights reserved. Rich X Search